package com.pimee.service.admin;

import java.util.List;
import java.util.Map;
import java.util.Set;

import com.github.pagehelper.PageInfo;
import com.pimee.model.SysRole;
import com.pimee.service.IBaseService;

public interface ISysRoleService extends IBaseService<SysRole> {
	/**
	 * 获取角色权限列表
	 * 
	 * @param userId
	 * @return
	 */
	Set<String> selectRoleKeys(Long userId);

	/**
	 * 获取用户关联角色
	 * 
	 * @param userId
	 * @return
	 */
	List<SysRole> selectRolesByUserId(Long userId);

	/**
	 * 角色分页列表
	 * 
	 * @param params
	 * @return
	 */
	PageInfo<SysRole> pageRole(Map<String, Object> params);

	/**
	 * 新增角色
	 * 
	 * @param role
	 */
	void insertRole(SysRole param);

	/**
	 * 更新角色
	 * 
	 * @param role
	 */
	void updateRole(SysRole param);
	/**
	 * 更新角色菜单
	 * @param roleId
	 * @param menuIds
	 */
	void updateRoleMenu(Long roleId, List<String> menuIds);
	/**
	 * 删除角色
	 * @param roleId
	 */
	void deleteRole(Long roleId);

}
